package com.lanchetech.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 门店
 */
@ApiModel(value = "com-lanchetech-entity-Shop")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Shop implements Serializable {
    /**
     * id
     */
    @ApiModelProperty(value = "id")
    private Long id;

    /**
     * 门店名称
     */
    @ApiModelProperty(value = "门店名称")
    private String shopName;

    /**
     * 顶部主图
     */
    @ApiModelProperty(value = "顶部主图")
    private String mainImage;

    /**
     * 门店相册，逗号分隔，最多10张
     */
    @ApiModelProperty(value = "门店相册，逗号分隔，最多10张")
    private String imageList;

    /**
     * 证件照片，逗号分隔，最多5张
     */
    @ApiModelProperty(value = "证件照片，逗号分隔，最多5张")
    private String certificateList;

    /**
     * 门店头像
     */
    @ApiModelProperty(value = "门店头像")
    private String avatar;

    /**
     * 公告
     */
    @ApiModelProperty(value = "公告")
    private String announcement;

    /**
     * 门店标签，逗号分隔
     */
    @ApiModelProperty(value = "门店标签，逗号分隔")
    private String tags;

    /**
     * 省份行政区划代码
     */
    @ApiModelProperty(value = "省份行政区划代码")
    private Long province;

    /**
     * 城市行政区划代码
     */
    @ApiModelProperty(value = "城市行政区划代码")
    private Long city;

    /**
     * 县(区)行政区划代码
     */
    @ApiModelProperty(value = "县(区)行政区划代码")
    private Long area;

    /**
     * 合并名称
     */
    @ApiModelProperty(value = "合并名称")
    private String mergerName;

    /**
     * 门店联系电话
     */
    @ApiModelProperty(value = "门店联系电话")
    private String phone;

    /**
     * 门店联系人姓名
     */
    @ApiModelProperty(value = "门店联系人姓名")
    private String name;

    /**
     * 详细地址，街道，门牌等
     */
    @ApiModelProperty(value = "详细地址，街道，门牌等")
    private String address;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    private BigDecimal longitude;

    /**
     * 定位地址
     */
    @ApiModelProperty(value = "定位地址")
    private String location;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private BigDecimal latitude;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createdAt;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Date updatedAt;

    /**
     * 门店状态 0 已关闭 1 已开启
     */
    @ApiModelProperty(value = "门店状态 0 已关闭 1 已开启")
    private Byte status;

    /**
     * 距离
     */
    @ApiModelProperty(value = "距离")
    private BigDecimal distance;

    /**
     * 门店店长用户id
     */
    @ApiModelProperty(value = "门店店长用户id")
    private Long userId;

    /**
     * 删除 0 未删除 1 已删除
     */
    @ApiModelProperty(value = "删除 0 未删除 1 已删除")
    private Byte deleted;

    /**
     * 营业开始时间
     */
    @ApiModelProperty(value = "营业开始时间")
    private String businessStart;

    /**
     * 营业结束时间
     */
    @ApiModelProperty(value = "营业结束时间")
    private String businessEnd;

    /**
     * 商店类型 0 普通商店 1 EMS体验店
     */
    @ApiModelProperty(value = "商店类型 0 普通商店 1 EMS体验店")
    private Byte type;

    /**
     * 经营品类名称
     */
    private String typeName;

    /**
     * 总体评价
     */
    @ApiModelProperty(value = "总体评价")
    private BigDecimal overallStar;

    /**
     * 服务态度评价
     */
    @ApiModelProperty(value = "服务态度评价")
    private BigDecimal serviceStar;

    /**
     * 商家环境评价
     */
    @ApiModelProperty(value = "商家环境评价")
    private BigDecimal environmentStar;

    /**
     * 性价比评价
     */
    @ApiModelProperty(value = "性价比评价")
    private BigDecimal valueStar;

    /**
     * 一级行业类目id
     */
    @ApiModelProperty(value = "一级行业类目id")
    private Long industryFirstId;

    /**
     * 二级行业类目id
     */
    @ApiModelProperty(value = "二级行业类目id")
    private Long industrySecondId;

    /**
     * 类目名称
     */
    @ApiModelProperty(value = "类目名称")
    private String industryName;

    /**
     * 拓展属性JSON
     */
    @ApiModelProperty(value = "拓展属性JSON")
    private String feature;

    /**
     * 银行卡号
     */
    @ApiModelProperty(value = "银行卡号")
    private String account;

    /**
     * 银行名称
     */
    @ApiModelProperty(value = "银行名称")
    private String bank;

    /**
     * 开户银行名称
     */
    @ApiModelProperty(value = "开户银行名称")
    private String openBank;

    /**
     * 开户名称
     */
    @ApiModelProperty(value = "开户名称")
    private String openName;

    /**
     * 店铺描述
     */
    @ApiModelProperty(value = "店铺描述")
    private String description;

    /**
     * 背景图
     */
    @ApiModelProperty(value = "背景图")
    private String imageUrl;

    /**
     * 售后电话
     */
    @ApiModelProperty(value = "售后电话")
    private String afterSalePhone;

    /**
     * 售后地址
     */
    @ApiModelProperty(value = "售后地址")
    private String afterSaleAddress;

    /**
     * 退货地址
     */
    @ApiModelProperty(value = "退货地址")
    private String returnAddress;

    /**
     * 平台服务费率
     */
    @ApiModelProperty(value = "平台服务费率")
    private BigDecimal serviceRate;

    /**
     * 快递助手多店铺id
     */
    @ApiModelProperty(value = "快递助手多店铺id")
    private Long mallUserId;

    /**
     * 店铺等级 0 官方优品店 1 官方品质店 2 官方明星店 3 设计师店 4 品牌创意店
     */
    @ApiModelProperty(value = "店铺等级 0 官方优品店 1 官方品质店 2 官方明星店 3 设计师店 4 品牌创意店")
    private Byte shopLevel;

    /**
     * 门店类型 0 项目店 1 体验店
     */
    @ApiModelProperty(value = "门店类型 0 项目店 1 体验店")
    private Byte kind;

    // 新增字段值
    /**
     * 证件类型  1.居民身份证； 2.临时身份证；
     */
    private Byte certificateType;
    /**
     * 统一社会信用代码(抬头编号)
     */
    private String licenseNumber;
    /**
     * 店内环境图
     */
    private String environmentImage;
    /**
     * 法人身份证正面
     */
    private String idCardPositive;
    /**
     * 法人身份证背面
     */
    private String idCardBack;
    /**
     * 法人姓名
     */
    private String idCardName;
    /**
     * 法人身份证号码
     */
    private String idCardCode;
    /**
     * 法人身份证号码
     */
    private String idCardNumber;
    /**
     * 营业执照照片
     */
    private String licenseImage;
    /**
     * 营业执照有效时间
     */
    private Date licenseValidTime;

    /**
     * 营业执照是否长期有效 false 不是 true 是
     */
    private Byte licenseLongTerm;
    /**
     * 审核状态   false  未审核   true  已审核
     */
    private boolean verifyStatus;
    /**
     * 经营品类id
     */
    @ApiModelProperty(value = "经营品类id")
    private Long typeId;

    private String logo;

    private Byte applyType;

    private Byte shopType;
    /**
     * 许可证照片
     */
    @ApiModelProperty(value = "许可证照片")
    private String permitImage;

    @ApiModelProperty(value = "营业时长")
    private Integer shopOpenTime;

    private static final long serialVersionUID = 1L;
}